home *** CD-ROM | disk | FTP | other *** search
/ Varios Español / Varios Español.iso / DBASE5 / SAMPLES.ZIP / COPIASEG.PRG < prev    next >
Text File  |  1994-10-12  |  4KB  |  130 lines

  1.  
  2. ******************************************************************************
  3. *  NOMBRE DEL PROGRAMA:              COPIASEG.PRG
  4. *                                    PROGRAMA PARA ARCHIVAR Y RECUPERAR DATOS
  5. *                                    PROGRAMA EJEMPLO DE APLICACION DE GESTION
  6. *  ULTIMO CAMBIO:                    24/02/93 04:00 PM
  7. *  ESCRITO POR:                      BORLAND
  8. ******************************************************************************
  9.  
  10. * Procedimiento principal
  11. PROCEDURE Copiaseg
  12.    CLOSE DATABASES
  13.    PUBLIC mpath
  14.    STORE "" TO choice, answer
  15.    * Definir menús de ventana
  16.    DO M_popdef
  17.    SET COLOR TO &c_normal.
  18.    CLEAR
  19.    SET COLOR TO &c_pop.
  20.    ACTIVATE POPUP backmenu
  21. RETURN TO Gestión
  22. *==================== fin del procedimiento principal ==================
  23.  
  24. * PROCEDIMIENTOS DE UTILIDADES
  25. PROCEDURE Bbackup
  26.    * Copiar ficheros de base de datos y de índice a diskette(s)
  27.    ACTIVATE WINDOW backup
  28.       @ 0,0  SAY "-------------- COPIA DE SEGURIDAD ---------------"
  29.       @ 1,2  SAY "Inserte un diskette formateado en la unidad A:"
  30.       WAIT       "  Pulse cualquier tecla para comenzar..."
  31.       RUN BACKUP &mpath.*.DB? A:
  32.       RUN BACKUP &mpath.*.MDX A: /A
  33.       ?? CHR(7)
  34.       CLEAR
  35.       ?      "**** PROCESO DE COPIA DE SEGURIDAD FINALIZADO ***"
  36.       WAIT
  37.    DEACTIVATE WINDOW backup
  38.    SET COLOR TO &c_normal.
  39.    CLEAR
  40.    SET COLOR TO &c_pop.
  41. RETURN
  42.  
  43. PROCEDURE Back
  44.    * Ejecutar un caso según la opción elegida
  45.    DO CASE
  46.       CASE BAR() =  2
  47.          DO Sure
  48.          IF choice = "S"
  49.             DO Bbackup
  50.          ENDIF
  51.       CASE BAR() =  3
  52.          DO Sure
  53.          IF choice = "S"
  54.             DO Rrestore
  55.          ENDIF
  56.       CASE BAR() =  4
  57.          RETURN TO Gestión
  58.    ENDCASE
  59. RETURN
  60.  
  61. PROCEDURE M_popdef
  62.    * Definir el menú de ventana principal
  63.    DEFINE POPUP backmenu FROM 7,20 TO 12,59 ;
  64.      MESSAGE "Pulse la inicial de una opción del menú " + ;
  65.              "o seleccione y pulse <Intro>"
  66.    DEFINE BAR 1 OF backmenu ;
  67.           PROMPT "==== MENU DE COPIAS DE SEGURIDAD =====" SKIP
  68.    DEFINE BAR 2 OF backmenu ;
  69.           PROMPT " Archivar datos en copia de seguridad"
  70.    DEFINE BAR 3 OF backmenu ;
  71.           PROMPT " Recuperar datos de copia de seguridad"
  72.    DEFINE BAR 4 OF backmenu ;
  73.           PROMPT " Volver al menú principal"
  74.    ON SELECTION POPUP backmenu DO Back
  75.    DEFINE WINDOW backup FROM 14,15 TO 20,65 COLOR &c_pop.
  76. RETURN
  77.  
  78. PROCEDURE Rrestore
  79.    * Recuperar ficheros de base de datos y de índice de los diskette(s)
  80.    ACTIVATE WINDOW backup
  81.       @ 0,0  SAY "-------------- RECUPERAR DATOS -----------------"
  82.       @ 1,0  SAY " Inserte la copia de seguridad en la unidad A:"
  83.       WAIT       " y pulse cualquier tecla para comenzar . . . ."
  84.       ! RESTORE A: &mpath.*.DB?
  85.       ! RESTORE A: &mpath.*.MDX
  86.       ?? CHR(7)
  87.       CLEAR
  88.       ?      "******* PROCESO DE RECUPERACION TERMINADO *******"
  89.       WAIT
  90.    DEACTIVATE WINDOW backup
  91.    SET COLOR TO &c_normal.
  92.    CLEAR
  93.    SET COLOR TO &c_pop.
  94. RETURN
  95.  
  96. PROCEDURE Sure
  97.    * Visualizar el mensaje de confirmación
  98.    SET COLOR TO &c_normal.
  99.    CLEAR
  100.    choice = "N"
  101.    ACTIVATE WINDOW backup
  102.       @ 0, 0  SAY "------------------- ATENCION --------------------"
  103.       @ 1, 0  SAY "  ¿Seguro que desea archivar o recuperar datos?"
  104.       @ 2, 0  SAY "  Pulse S para continuar o N para abandonar."
  105.       @ 3,10  SAY "ELECCION:" GET choice PICTURE "Y"
  106.       ?? CHR(7)
  107.       READ
  108.       IF choice = "N"
  109.          SET COLOR TO &c_pop.
  110.          DEACTIVATE WINDOW backup
  111.          RETURN
  112.       ENDIF
  113.       * Vía de acceso del DOS para ejecutar los programas BACKUP y RESTORE
  114.       IF UPPER(choice) = "S"
  115.          ?? CHR(7)
  116.          mpath = "C:\dBASE\EJEMPLOS\" + SPACE(10)
  117.          CLEAR
  118.          @ 0, 0  SAY "----- INTRODUZCA VIA DE ACCESO DE EJEMPLOS ------"
  119.          @ 1, 0  SAY "   Introduzca unidad y vía de acceso del DOS"
  120.          @ 2, 0  SAY "  (la unidad y vía de acceso de sus ficheros)"
  121.          @ 3, 2  GET mpath VALID "" <> TRIM(mpath) ;
  122.             MESSAGE "Introduzca unidad y vía de acceso completa"
  123.          READ
  124.          mpath = TRIM(mpath)
  125.       ENDIF
  126.    DEACTIVATE WINDOW backup
  127. RETURN
  128.  
  129. ******************************  FIN DE COPIASEG.PRG  ************************************
  130.